import java.util.HashMap;
import java.util.Map;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: Hua YY
 * Date: 2025-01-21
 * Time: 21:00
 */
class Solution1 {
    public int[] twoSum(int[] nums, int target) {
        Map<Integer,Integer> map = new HashMap<>();
        int n = nums.length;
        for(int i = 0 ; i < n ; i++){
            int num = nums[i];
            map.put(num,i);
        }
        for(int i = 0 ; i < n ; i++){
            int num = nums[i];
            int ret = target - num;
            if(!map.containsKey(ret)){
                continue;
            }
            int index = map.get(ret);
            if(index != i){
                return new int[]{i,index};
            }
            continue;
        }
        return new int[2];
    }
}




















// class Solution {
//     public int[] twoSum(int[] nums, int target) {
//         Map<Integer,Integer> map = new HashMap();
//         for(int i = 0 ; i < nums.length ; i++){
//             map.put(nums[i],i);
//         }
//         for(int i = 0 ; i < nums.length ; i++){
//             int num2 = target - nums[i];
//             if(map.containsKey(num2)){
//                 int index = map.get(num2);
//                 if(i != index){
//                     return new int[]{i,index};
//                 }
//             }
//         }
//         return new int[]{0,0};
//     }
// }




// public int[] twoSum(int[] nums, int target) {
//         Map<Integer , Integer> hash = new HashMap<>();

//         for(int i = 0 ; i < nums.length ; i++){
//             int tem = target - nums[i];
//             if(hash.containsKey(tem)){
//                 return new int[]{hash.get(tem),i};
//             }
//             hash.put(nums[i],i);
//         }
//         return new int[]{1};
//     }
public class Test1 {
}
